package jmine.tec.services.api.execution;

import java.util.List;

import jmine.tec.services.api.ServiceExecutionException;
import jmine.tec.services.api.ServicesPage;

/**
 * Define a interface de executores de servicesPages.
 * 
 * @author Rafael Volpato
 */
public interface ServicesPageExecutor {

    /**
     * Executa uma lista de servicesPages.
     * 
     * @param servicesPages lista de servicesPages
     * @param params parâmetros de execução de serviços
     * @throws ServiceExecutionException se ocorrer algum erro durante a execucao de algum dos servicesPages
     */
    void execute(List<ServicesPage> servicesPages, ExecutorParams params) throws ServiceExecutionException;

    /**
     * Executa uma lista de servicesPages.
     * 
     * @param servicesPages lista de servicesPages
     * @throws ServiceExecutionException se ocorrer algum erro durante a execucao de algum dos servicesPages
     */
    void execute(List<ServicesPage> servicesPages) throws ServiceExecutionException;
}
